//package com.leo.core.colgoogle;
//
//import com.google.common.base.Function;
//import com.google.common.collect.MapMaker;
//
//import java.util.concurrent.ConcurrentMap;
//import java.util.concurrent.TimeUnit;
//
///**
// * Created by 子木 on 2016/2/20.
// */
//public class MapMakerT {
//    // 使用案例:存储验证码
//    // <String, String> == <用户唯一，验证码>
//    // expiration(15, TimeUnit.MINUTES) 有效期15分钟
//    ConcurrentMap<String,String> capthcaMap = new MapMaker().expiration(15, TimeUnit.MINUTES).makeMap();
//
//    // 设置ConcurrentMap的concurrencyLevel参数 ，例如ConcurrentHashMap是用来控制其Segment数组的大小
//    ConcurrentMap<String,Object> map1 = new MapMaker().concurrencyLevel(8).makeMap();
//
//    // 构造各种不同reference作为key和value的map
//    ConcurrentMap<String,Object> map2 = new MapMaker().softKeys().weakValues().makeMap();
//
//    // 提供当Map里面不包含所get的项，可以自动加入到Map的功能
//    ConcurrentMap<String,Integer> map3 = new MapMaker()
//            .makeComputingMap(
//                    new Function<String, Integer>() {
//                        public Integer apply(String key) {
//                            return 1;
//                        }
//                    }
//            );
//}
